Моделювання багатошарової нейронної мережі

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
РТ
Кафедра:
Не вказано

Інформація про роботу

Рік:
2015
Тип роботи:
Лабораторна робота
Предмет:
Моделювання

Частина тексту файла

Міністерство освіти i науки України Національний університет “Львівська політехніка” Лабораторна робота №4 з курсу " Інтелектуальні мехатронні системи" На тему «Моделювання багатошарової нейронної мережі» Тема. Моделювання багатошарової нейронної мережі Мета: навчитися проектувати та реалізовувати нейронну мережу для задач апроксимації з урахуванням шуму. Короткі теоретичні відомості При проектуванні нейронної мережі необхідно визначити кількість шарів і кількість елементів (нейронів) у кожному шарі. Вибір архітектури нейронної мережі залежить від складності завдання і ґрунтується на досвіді розробника. При моделюванні нейронної мережі виділяють наступні етапи: 1) створення мережі; 2) навчання мережі; 3) тестування мережі; 4) використання мережі для розв’язання поставленого завдання. Порядок виконання роботи Код програми p = [-1:0.05:1]; t = sin(pi*2*p); net = newff (minmax(p),[30,1], {'tansig' 'purelin'},'trainbfg'); netn=net; % ініціалізація мережі; netn.trainParam.epochs = 500; % задану кількість циклів навчання; netn.trainParam.show=50; % кількість циклів для показу проміжних netn.trainParam.goal=1e-5; % цільова помилка навчання; t1=[sin(2*pi*p) sin(2*pi*p)]; % вихідний вектор мережі; p1=[p,(p + randn(size(p))*0.02)] % вхідний вектор мережі з шумом; gensim(net); [netn, tr] = train (netn, p1, t1); % навчання мережі за наявності шуму. netn.trainParam.goal=1e-10; [netn, tr] = train (netn, p, t); % повторне навчання мережі за відсутності шуму. tic % встановлює таймер noise=0:0.01:0.1; % різні рівні шуму test=20; % кількість ітерацій network1=[]; network2=[]; t=sin(2*pi*p); % вихідний вектор for noiselevel= noise errors1=0; errors2=0; for i=1:test P=p+randn(size(p))*noiselevel; % вхідний вектор A = sim(net,P); errors1=errors1+sum(sum(abs(A-t)))/2; An = sim(netn,P); errors2=errors2+sum(sum(abs(An-t)))/2; echo off; end network1=[network1 errors1/41/20]; network2=[network2 errors2/41/20]; end network1 network2 toc figure(1); plot(noise, network1*100,'--b', noise, network2*100,':r', 'LineWidth', 1.5); legend('% pomulki meregi net','pomulki meregi netn'); xlabel ('Riven shymy','FontSize',12); ylabel ('% pomulki','FontSize',12); title('Zalejnist % pomulki vid rivna vhidnogo shymy','FontSize',12, 'FontWeight','bold'); grid on p2 =randn(size(p))*0.03+p; [an,E]=sim(net,p2); figure(2); plot(p2,t, '+' , p2, an, '-', p,t, ':', 'LineWidth',1.5); legend('vhid','vuhid','sin(2*\pi*t)'); title('Aproksomacia fyncii y=sin(2*pi*t)','FontSize',12, 'FontWeight','bold'); grid on; E=mse(an-t); / Рис.1 – Структурна схема мережі / Рис.2 – Структурна схема мережі. Перший та другий прихований шар мережі / Рис.3 – Залежність відсотка помилки від рівня вхідного шуму / Рис.4 – Апроксимація функції двошаровою нейронною мережею Виснвок:
Антиботан аватар за замовчуванням

27.11.2015 00:11

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини